草庐IT

cookie、session、web storage

全部标签

php - 查找打开 session 数

我正在寻找一种简单(无数据库)的方法来列出网站上有多少活跃用户。我能想到的最简单的方法是计算打开的session数。此代码应该可以工作:$number_of_users=count(scandir(ini_get("session.save_path")));当然不会,因为该目录的安全限制(应该有!!)。有谁知道在不更改目录权限的情况下访问此号码的另一种方法。注意:我正在寻找一个不涉及数据库或降低PHPsession安全性的选项。尾注:对于任何遇到这个问题的人,我最终从root使用了一个cronjob(每分钟运行一次),它做了类似的事情:ls/var/lib/php5/|wc-l>/v

php - 如果 PHP session 在请求中间超时,$_SESSION 数组会发生什么情况?

我一直在想,如果PHPsession在执行脚本的过程中超时,那么$_SESSION数组中的内容是否仍然可用,直到脚本执行结束?例如:session_start();if(!isset($_SESSION['name'])){echo'Nameisnotset';exit;}//imaginethereisabunchofcodehereandthatthesessiontimesoutwhile//thiscodeisbeingexecutedecho'Nameis',$_SESSION['name'];//willthislinethrowanerror?将session变量复制到本

php - 无法在同一页面上设置 PHP cookie

我在同一页面上设置cookie时遇到问题。我在我的网站上使用了cookie,它工作正常,我倾向于将php设置在单独的文件中。现在,我在同一页面上设置了一个cookie,但它似乎不起作用。$expire=time()+5;setcookie("rb_vote",1,$expire);然后检查是否设置if(isset($_COOKIE["rb_vote"])){echo"ISSET";}else{echo"ISNOTSET";}它总是说未设置。我尝试在页面加载时执行此操作,但仍然无效。 最佳答案 参见manualonsetcookie(

php - 如何使 session /cookies 在 Yii 的所有子域中工作

我有几个子域,如“a.domain.com”、“b.domain.com”,但我发现如果我在子域a登录,session/cookies在b中将不起作用,我必须重新登录在“b.domain.com”中如何让登录session在所有子域中工作?更新:我发现每个子域都有不同的sessionID...更新:我发现我只能登录'bench'和'post'等几个域,但是不能登录'book'和其他域。真奇怪。 最佳答案 你可以像我一样在yiiconfig/main.php文件中设置它。(我不确定您是否还需要更改php.ini文件,但我会说“不”,因

php - 如果不取消设置, session 变量将持续多长时间?

当我在session(在php中)中存储一个变量时,该变量将在该文件中停留多长时间?在有人取消设置变量或删除文件之前,它会一直存在吗?更新:所以是session.gc-maxlifetime在php.ini文件中设置的设置。您可以通过调用phpinfo()检查您的设置。我的设置为1440秒,所以24分钟。Mighthavefoundaduplicatehere,虽然谷歌搜索时我一开始因为措辞没有找到它。 最佳答案 默认情况下会保留24分钟。(这是默认的php.ini文件设置)。正如您所评论的,这是设置:http://www.php.

php - 测试 CodeIgniter session 变量的正确方法是什么?

采用以下代码片段。确保session变量不为空的最佳测试方法是什么?session->userdata('userID')){$loggedIn=1;}else{$loggedIn=0;}?>如果稍后在我的脚本中调用以下命令,第一个正确打印,但第二个我收到消息:undefinedvariable:loggedInsession->userdata('userID'));echo$loggedIn;?>我试过使用!empty和isset,但都没有成功。我还尝试使用if(!($this->session->userdata('userID'))向后执行if/then语句,但没有骰子。有什么

php - Codeigniter 无法删除 cookie

我有一个登录脚本,现在我正在尝试为其构建一个注销。我在CodeIgniter中同时使用cookie和session,尽管执行了以下操作,但cookie仍然设法保留,我不明白为什么。据称这是通过CI杀死cookie的方法,但我注销,关闭页面,转到另一个页面并print_r($_COOKIE)它们仍然会在那里。$this->session->sess_destroy();delete_cookie('LongRemember','','0');delete_cookie('AutoRemember','','0');redirect('m/logout','refresh');echo'l

PHP-cookie 不保存

我目前正在使用session和cookie实现一些东西,但cookie没有存储在我的计算机上。因此无法检索session。session_start();//returnstruevar_dump($_SESSION);//array(0){}var_dump($_COOKIE);//array(0){}$_SESSION['test']=5;setcookie('aaa','111',strtotime('+30days'));die;重新加载页面应该显示非空数组。但它们总是空的。Firebug的cookies选项卡上也没有显示cookie。我在同一台服务器上使用另一个可以正常处理s

php - 部署我的网络博客的 cms 部分后出现 Cakephp session 错误

我在netfirms服务器上安装了一个CakePhp2.0博客应用程序,该博客与定义博客使用的术语的PostsController一起工作正常,当我现在添加编辑、添加和删除帖子等操作时,使用beforeSave编辑我的模型()回调并添加了一个新的ControllerGalleriesController,它具有删除图像、修改或添加新图像的相同功能,然后当任何cms操作发生时,无论是后期编辑或修改还是图像编辑或修改,我都会在网络服务器上收到此错误'在我的本地WAMP服务器安装上显示Warning(2):session_start():open(/var/php_sessions/sess

PHP $_SESSION 变量

我在网站的登录工作流程中使用PHP$_SESSION变量,我只是想做一些说明。就像Facebook一样,我想存储一个只有服务器知道的密码,用于签署发送到服务器和从服务器发送的每个请求。我最初的方法是生成一个随机字符串并将其存储在MySQL表中,但后来我了解了session变量。我知道默认情况下session变量通过使用存储session名称和ID的cookie来工作,对吗?没有任何实际数据存储在用户的计算机上?所以如果我想实现:#assumethat$rand_stringisnotnullandastringsession_start();$_SESSION['secret']=$r